axios.defaults.baseURL = 'http://119.23.233.168:80/'
Vue.prototype.$http = axios;

//1 使用axios前置拦截器，让所有的请求都携带token
axios.interceptors.request.use(config=>{
    //携带token
    let token =  localStorage.getItem("token");
    if(token){
        config.headers['token']=token;
    }
    return config;
},error => {
    Promise.reject(error);
})

//2 使用axios后置拦截器，处理没有登录请求
axios.interceptors.response.use(result=>{
    let data = result.data;  // {success:false,message:"noLogin"}
    // 说明后端返回错误信息是 未登录，那么就要跳转到登录页面
    if(!data.success && data.message==="noLogin"){
        router.push({ path: '/login' });
    }
    return result;
},error => {
    Promise.reject(error);
})
function str2Obj(url) {
    let paramsStr = url.substring(url.indexOf("?")+1);
    let paramsArray = paramsStr.split("&");
    let paramObj = {};
    $.each(paramsArray,function(index,param){
        let parmName = param.split("=")[0];
        let parmValue = param.split("=")[1];
        paramObj[parmName] = parmValue;
    })
    return paramObj;
}
// 前端怎么做登录拦截
// 拿到localStorage中的logininfo
// 判断logininfo有没有值,没有值就说明没有登录
// 并不是每一个页面都要拦截,有些是需要放行的
let excludePath = ["/index.html","/callback.html","/binder.html","/exam.html"];
let isRun = false;  // 是否放行  true 放行 false 拦截
let url = location.href;    // http://127.0.0.1:8081/index.html
for(let i = 0;i<excludePath.length;i++){
    let path = excludePath[i];  // 字符串1.indexOf(字符串2)  找出字符串2在字符串1的索引位置
    if(url.indexOf(path) > -1){
        isRun = true;
        break;
    }
}
if(url === "http://127.0.0.1:80/" || url === "http://wx.rongcarservice.com/"){
    isRun = true;
}
if(!isRun){ // isRun = false 说明要拦截
    let loginInfo = localStorage.getItem("loginInfo");
    if(!loginInfo){ // loginInfo == true  说明loginInfo是有值的  loginInfo==false 说明是没有值
        alert("请登录后再访问!");
        location.href = "/index.html";  // 这个地方以后根据需求可以跳转到登录页面,现在就先跳转到首页
    }
}